/*
 * Copyright (C) 2025 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the 'License');
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an 'AS IS' BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

export let regex = /hello/ig;

export let regex1 = /abc/;

export let str1 = 'abc';

export let str = 'abc';

export let a = new Boolean(true);

export let b = new Boolean(false);

export let d = new Boolean(undefined);

export let e = new Boolean(null);

export let f = new Boolean('');

export let g = new Boolean(1);

export let sum1 = new Number(6);

export let sum2 = new Number(2);

export let sum3 = new Number(3.6);

export let sum4 = new Number(3.14159);

export let sum5 = new Number('test');

export let Str1 = new String('test');

export let Str2 = new String('Hello');

export let name = new String('Alice');

export let Str3 = new String(undefined);

export let Str4 = new String(null);

export let Str5 = new String('');

export let Str6 = new String('!"#$%&\'0"+,-./-<==>?@[\\^_]]~');

export let Str7 = new String('A中');

export let Str8 = new String('\udc04\udB3d\udff4');

export let Str9 = new String('\uD800\uDC00');

export let Str10 = new String('0');

export let Str11 = new String('NaN');

export let big1 = new BigInt(120);

export let big2 = new BigInt(60);

export let big3 = new BigInt(58);

export let big4 = new BigInt(Infinity);

export let big5 = new BigInt(-Infinity);

export let big6 = new BigInt(undefined);

export let big7 = new BigInt(null);

export let big8 = new BigInt('');

export let big9 = new BigInt(NaN);

export let big10 = new BigInt(0xdecafafeacefade);

export let primitiveNum = new Number(1);

export let primitiveStr = new String('123');

export let primitiveBoolean = new Boolean(true);

export let primitiveUndefined = new Undefined('123');

export let primitiveNull = new Null('123');

export let primitiveBigInt = new BigInt('123');

export let primitiveSymbol = new Symbol('Symbol');
let SymbolA = new Symbol('test');
let SymbolB = new Symbol('test');

export function testPrimitiveType(arg) {
  return typeof arg;
}
